indexes.tsx 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import { ExternalLink } from 'lucide-react'
  2. import { Button } from 'ui'
  3. import { PageContainer } from 'ui-patterns/PageContainer'
  4. import {
  5. PageHeader,
  6. PageHeaderAside,
  7. PageHeaderDescription,
  8. PageHeaderMeta,
  9. PageHeaderSummary,
  10. PageHeaderTitle,
  11. } from 'ui-patterns/PageHeader'
  12. import { PageSection, PageSectionContent } from 'ui-patterns/PageSection'
  13. import { Indexes } from '@/components/interfaces/Database/Indexes/Indexes'
  14. import DatabaseLayout from '@/components/layouts/DatabaseLayout/DatabaseLayout'
  15. import { DefaultLayout } from '@/components/layouts/DefaultLayout'
  16. import { DocsButton } from '@/components/ui/DocsButton'
  17. import { DOCS_URL } from '@/lib/constants'
  18. import type { NextPageWithLayout } from '@/types'
  19. const IndexesPage: NextPageWithLayout = () => {
  20. return (
  21. <>
  22. <PageHeader size="large">
  23. <PageHeaderMeta>
  24. <PageHeaderSummary>
  25. <PageHeaderTitle>Database Indexes</PageHeaderTitle>
  26. <PageHeaderDescription>
  27. Improve query performance against your database
  28. </PageHeaderDescription>
  29. </PageHeaderSummary>
  30. <PageHeaderAside>
  31. <DocsButton
  32. className="no-underline"
  33. href={`${DOCS_URL}/guides/database/query-optimization`}
  34. />
  35. <Button asChild type="default" icon={<ExternalLink strokeWidth={1.5} />}>
  36. <a
  37. target="_blank"
  38. rel="noreferrer"
  39. className="no-underline"
  40. href={`${DOCS_URL}/guides/database/extensions/index_advisor`}
  41. >
  42. Index Advisor
  43. </a>
  44. </Button>
  45. </PageHeaderAside>
  46. </PageHeaderMeta>
  47. </PageHeader>
  48. <PageContainer size="large">
  49. <PageSection>
  50. <PageSectionContent>
  51. <Indexes />
  52. </PageSectionContent>
  53. </PageSection>
  54. </PageContainer>
  55. </>
  56. )
  57. }
  58. IndexesPage.getLayout = (page) => (
  59. <DefaultLayout>
  60. <DatabaseLayout title="Indexes">{page}</DatabaseLayout>
  61. </DefaultLayout>
  62. )
  63. export default IndexesPage